package com.kaifamiao.singleton;

/**
 * 饿汉式单例
 * 1、将所有构造方法都私有化 (目的: 避免在该类之外创建该类的实例)
 * 2、提供一个静态工厂方法用来返回该类的惟一的实例
 * 3、提供一个类变量用于保存该类惟一的实例
 */
public class Earth {
	
	public static String name ;
	
	// 提供一个类变量用于保存该类惟一的实例
	private static final Earth EARTH = new Earth();
	
	static {
		System.out.println( "static" );
		name = "地球" ;
	}
	
	// 将所有构造方法都私有化
	private Earth() {
		super();
		System.out.println( "创建Earth实例" );
	}
	
	// 提供一个静态工厂方法用来返回该类的惟一的实例
	public static Earth getInstance() {
		return EARTH;
	}
	
	public void welcome() {
		System.out.println( "欢迎来到" + name );
	}
}
